
#pragma once

#include "base/core/singleton.h"
#include "Common/TableDefine.h"


class BreachBreachCfg : public ManualSingleton <BreachBreachCfg>
{
	friend ManualSingleton <BreachBreachCfg>;
public:
	BreachBreachCfg();
	~BreachBreachCfg();
	bool Init(const char *szCfgFile, const char *szSplitChar);
	bool UnInit();
	void Clear();
	const BreachBreachCfgInfo *GetBreachBreachCfgInfo(int32_t id);
	const BreachBreachCfgMap *GetBreachBreachCfgMap() { return &m_BreachBreachCfgMap; }
private:
	BreachBreachCfgMap m_BreachBreachCfgMap;
};

#define  g_MakeBreachBreachCfgTable() (BreachBreachCfg::Instance())
#define  g_GetBreachBreachCfgTable() (BreachBreachCfg::GetInstance())
#define  g_DelBreachBreachCfgTable() (BreachBreachCfg::Destroy())